<!doctype html>
<html lang="zh-CN">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- 上述3个meta标签*必须*放在最前面，任何其他内容都*必须*跟随其后！ -->
    <title>列选项-自然排序</title>

    <!-- Bootstrap -->
    <link rel="stylesheet" href="bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="bootstrap/css/bootstrap-table.min.css">
    <link rel="stylesheet" href="font-awesome/css/font-awesome.min.css">
    <style>
        .toolbar label {
            margin-right: 10px;
        }
    </style>

    <!-- HTML5 shim 和 Respond.js 是为了让 IE8 支持 HTML5 元素和媒体查询（media queries）功能 -->
    <!-- 警告：通过 file:// 协议（就是直接将 html 页面拖拽到浏览器中）访问页面时 Respond.js 不起作用 -->
    <!--[if lt IE 9]>
    <script src="bootstrap/js/html5shiv.min.js"></script>
    <script src="bootstrap/js/respond.min.js"></script>
    <![endif]-->
</head>
<body>
<h1>使用utils函数可对列进行自然排序</h1>
<div class="toolbar">
    <label><input id="alphanum" type="checkbox" checked> name sorter: 'alphanum'</label>
    <label><input id="numericOnly" type="checkbox" checked> price sorter: 'numericOnly'</label>
</div>

<table id="table"></table>

<!-- jQuery (Bootstrap 的所有 JavaScript 插件都依赖 jQuery，所以必须放在前边) -->
<script src="bootstrap/js/jquery.min.js"></script>
<!-- 加载 Bootstrap 的所有 JavaScript 插件。你也可以根据需要只加载单个插件。 -->
<script src="bootstrap/js/bootstrap.min.js"></script>
<!-- Latest compiled and minified JavaScript -->
<script src="bootstrap/js/bootstrap-table.min.js"></script>
<!-- Latest compiled and minified Locales -->
<script src="bootstrap/js/bootstrap-table-zh-CN.min.js"></script>
<script src="https://cdn.jsdelivr.net/gh/wenzhixin/bootstrap-table-examples@master/utils/natural-sorting/dist/natural-sorting.js"></script>
<script>
    function init() {
        $('#table').bootstrapTable('destroy').bootstrapTable({
            toolbar: '.toolbar',
            columns: [
                {
                    field: 'id',
                    title: 'ID'
                },
                {
                    field: 'name',
                    title: 'Name',
                    sortable: true,
                    sorter: $('#alphanum').prop('checked') ? window.alphanum : undefined
                },
                {
                    field: 'price',
                    title: 'Price',
                    sortable: true,
                    sorter: $('#numericOnly').prop('checked') ? window.numericOnly : undefined
                }
            ],
            data: [
                {
                    'id': 0,
                    'name': 'Item 0',
                    'price': '$0'
                },
                {
                    'id': 1,
                    'name': 'Item 1',
                    'price': '$1'
                },
                {
                    'id': 2,
                    'name': 'Item 2',
                    'price': '$2'
                },
                {
                    'id': 3,
                    'name': 'item 3',
                    'price': '￥3'
                },
                {
                    'id': 4,
                    'name': 'item 4',
                    'price': '￥4'
                },
                {
                    'id': 5,
                    'name': 'Item 5',
                    'price': '$5'
                }
            ]
        })
    }

    $(function() {
        init()
        $('#alphanum, #numericOnly').click(init)
    })
</script>
</body>
</html>